今天是第二天我們可以從企業的大型資料庫看k8s如何導入公司系統中,以下是範例
例如:
以下是程式碼
這個 deployment.yaml
檔案定義了一個應用的部署,指定了應用的映像檔及副本數量。
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-app
labels:
app: my-app
spec:
replicas: 3
selector:
matchLabels:
app: my-app
template:
metadata:
labels:
app: my-app
spec:
containers:
- name: my-app-container
image: my-app:1.0
ports:
- containerPort: 8080
這個 service.yaml
檔案創建了一個 ClusterIP 服務,用來將流量路由到 Deployment 中的 Pods。
apiVersion: v1
kind: Service
metadata:
name: my-app-service
spec:
selector:
app: my-app
ports:
- protocol: TCP
port: 80
targetPort: 8080
type: ClusterIP
使用 HPA 來根據 CPU 利用率自動調整 Pod 的副本數量。
apiVersion: autoscaling/v2beta2
kind: HorizontalPodAutoscaler
metadata:
name: my-app-hpa
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: my-app
minReplicas: 3
maxReplicas: 10
metrics:
- type: Resource
resource:
name: cpu
target:
type: Utilization
averageUtilization: 50
這家公司通過導入 Kubernetes 成功實現了以下目標:
Kubernetes 為企業提供了高度自動化和擴展性的平台,適合需要高可用性和彈性擴展的應用場景。導入過程中需要詳細規劃,但最終能夠顯著提升運營效率。